8.9 concat表格横向拼接(多表横向合并)
表格的横向拼接与纵向拼接基本相同,但是要横向拼接要以每个表格的行索引为拼接依据,也就是行索引标签相同的合并到一行是,有以下两种方式,
多表横向外连接
多表横向内连接
import pandas as pd
y18=pd.read_excel(r "D:\Pyobject2023\object\测试\素材\1.8.09 concat表格横向拼接(多表横向合并).xlsx","2018年" , index_col=0)
y19=pd.read_excel(r "D:\Pyobject2023\object\测试\素材\1.8.09 concat表格横向拼接(多表横向合并).xlsx","2019年", index_col=0)
y20=pd.read_excel(r "D:\Pyobject2023\object\测试\素材\1.8.09 concat表格横向拼接(多表横向合并).xlsx","2020年", index_col=0)
print (y18)
print (y19)
print (y20)
df=pd.concat(
objs={ "2018年" :y18, "2019年" :y19, "2020年" :y20},
join = "outer" ,
axis =1).reset_index()
print (df)
返回:
数量 | 金额 | |
---|---|---|
月份 | ||
1月 | 145 | 2164 |
2月 | 127 | 2886 |
5月 | 125 | 3755 |
6月 | 130 | 3767 |
4月 | 140 | 3777 |
数量 | 金额 | |
---|---|---|
月份 | ||
4月 | 126 | 3449 |
5月 | 128 | 2600 |
6月 | 127 | 3238 |
2月 | 132 | 1531 |
3月 | 130 | 3068 |
数量 | 金额 | |
---|---|---|
月份 | ||
2月 | 115 | 3908 |
3月 | 124 | 2437 |
5月 | 128 | 3292 |
6月 | 134 | 1235 |
1月 | 132 | 3792 |
月份 | 2018年 | 2019年 | 2020年 | ||||
---|---|---|---|---|---|---|---|
数量 | 金额 | 数量 | 金额 | 数量 | 金额 | ||
0 | 1月 | 145.0 | 2164.0 | NaN | NaN | 132.0 | 3792.0 |
1 | 2月 | 127.0 | 2886.0 | 132.0 | 1531.0 | 115.0 | 3908.0 |
2 | 5月 | 125.0 | 3755.0 | 128.0 | 2600.0 | 128.0 | 3292.0 |
3 | 6月 | 130.0 | 3767.0 | 127.0 | 3238.0 | 134.0 | 1235.0 |
4 | 4月 | 140.0 | 3777.0 | 126.0 | 3449.0 | NaN | NaN |
5 | 3月 | NaN | NaN | 130.0 | 3068.0 | 124.0 | 2437.0 |